package com.webside.points.wechat;

import java.io.File;
import java.io.IOException;
import java.util.UUID;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.multipart.MultipartFile;


/**
 * 
 * @ClassName: UploadUtil
 * @Description: UploadUtil类,用于存放一些上传图片的方法
 * @author wujun
 * @date 2017年10月17日 下午3:02:14
 *
 */
public class UploadUtil {
	/*
	 * 文件类型
	 */
	private static String FILETYPE  = "jpg,jpeg,png,gif"; 
	
	/**
     * 
     * @Title: uploadImage
     * @Description: 上传图片
     * @param file	上传的图片路径
     * @param request	request
     * @return	boolean	返回上传图片成功的路径
     * @throws
     */
	public static String uploadImage(MultipartFile file,HttpServletRequest request){
		//获得物理路径webapp所在路径  
		String savePath = request.getSession().getServletContext().getRealPath("/"); 
		System.out.println("savePath：>>>"+savePath);
		if(!file.isEmpty()){  
            //生成uuid作为文件名称  
            String fileName = UUID.randomUUID().toString().replaceAll("-","");  
            //获得文件类型（可以判断如果不是图片，禁止上传）  
            String contentType = file.getContentType(); 
            //获得文件后缀名称  
            String fileType = contentType.substring(contentType.indexOf("/")+1); 
            //判断是否符合文件类型
            if(FILETYPE.contains(fileType)){
                savePath += "images/"+fileName+"."+fileType;
                try {
    				 file.transferTo(new File(savePath));
    				 savePath=savePath.replace(Constant.UPLOAD_SYSTEM_URL, Constant.REALM_URL);
    				 System.out.println("上传成功保存路径：>>>"+savePath);
    				 return savePath;
    			}  catch (IOException e) {
    				e.printStackTrace();
    			} 
            }
             
        }
		return null;
	}
	/**
     * 
     * @Title: removeImage
     * @Description: 删除图片
     * @param path	删除的图片路径
     * @return	boolean	返回删除是否成功
     * @throws
     */
	public static boolean removeImage(String path){
		path=path.replace(Constant.REALM_URL, Constant.UPLOAD_SYSTEM_URL);
		return new File(path).delete();
	}
}

